564 research outputs found

    A meta-analysis approach to refactoring and XP

    Get PDF
    The mechanics of seventy-two different Java refactorings are described fully in Fowler's text. In the same text, Fowler describes seven categories of refactoring, into which each of the seventy-two refactorings can be placed. A current research problem in the refactoring and XP community is assessing the likely time and testing effort for each refactoring, since any single refactoring may use any number of other refactorings as part of its mechanics and, in turn, can be used by many other refactorings. In this paper, we draw on a dependency analysis carried out as part of our research in which we identify the 'Use' and 'Used By' relationships of refactorings in all seven categories. We offer reasons why refactorings in the 'Dealing with Generalisation' category seem to embrace two distinct refactoring sub-categories and how refactorings in the 'Moving Features between Objects' category also exhibit specific characteristics. In a wider sense, our meta-analysis provides a developer with concrete guidelines on which refactorings, due to their explicit dependencies, will prove problematic from an effort and testing perspective

    The effectiveness of refactoring, based on a compatibility testing taxonomy and a dependency graph

    Get PDF
    In this paper, we describe and then appraise a testing taxonomy proposed by van Deursen and Moonen (VD&M) based on the post-refactoring repeatability of tests. Four categories of refactoring are identified by VD&M ranging from semantic-preserving to incompatible, where, for the former, no new tests are required and for the latter, a completely new test set has to be developed. In our appraisal of the taxonomy, we heavily stress the need for the inter-dependence of the refactoring categories to be considered when making refactoring decisions and we base that need on a refactoring dependency graph developed as part of the research. We demonstrate that while incompatible refactorings may be harmful and time-consuming from a testing perspective, semantic-preserving refactorings can have equally unpleasant hidden ramifications despite their advantages. In fact, refactorings which fall into neither category have the most interesting properties. We support our results with empirical refactoring data drawn from seven Java open-source systems (OSS) and from the same analysis form a tentative categorization of code smells

    Density Functions for Navigation-Function-Based Systems

    Get PDF
    In this paper, we present a scheme for constructing density functions for systems that are almost globally asymptotically stable (i.e., systems for which all trajectories converge to an equilibrium except for a set of measure zero) using navigation functions (NFs). Although recently proven converse theorems guarantee the existence of density functions for such systems, such results are only existential and the construction of a density function for almost globally asymptotically stable systems remains a challenging task. We show that for a specific class of dynamical systems that are defined based on an NF, a density function can be easily derived from the system’s underlying NF

    Weak Input-to-State Stability Properties for Navigation Function Based Controllers

    Get PDF
    Due to topological constraints, Navigation Functions, are not, except from trivial cases, equivalent to quadratic Lyapunov functions, hence systems based on Navigation Functions cannot directly accept an Input-to-State stability (ISS) characterization. However a relaxed version of Input-to-State stability, namely almost global ISS (aISS), is shown to be applicable. The proposed framework provides compositional capability for navigation function based systems. Cascade as well as feedback interconnections of aISS navigation systems are shown to also possess the aISS property under certain assumptions on the interconnections. Several simulated examples of navigation systems are presented to demonstrate the effectiveness of the proposed scheme

    Autonomous Task Planning for Heterogeneous Multi-Agent Systems

    Full text link
    This paper presents a solution to the automatic task planning problem for multi-agent systems. A formal framework is developed based on the Nondeterministic Finite Automata with ϵ\epsilon-transitions, where given the capabilities, constraints and failure modes of the agents involved, an initial state of the system and a task specification, an optimal solution is generated that satisfies the system constraints and the task specification. The resulting solution is guaranteed to be complete and optimal; moreover a heuristic solution that offers significant reduction of the computational requirements while relaxing the completeness and optimality requirements is proposed. The constructed system model is independent from the initial condition and the task specification, alleviating the need to repeat the costly pre-processing cycle for solving other scenarios, while allowing the incorporation of failure modes on-the-fly. Two case studies are provided: a simple one to showcase the concepts of the proposed methodology and a more elaborate one to demonstrate the effectiveness and validity of the methodology.Comment: Long version of paper submitted to the IEEE ICRA 2023 Conferenc

    Computing the entropy of user navigation in the web

    Get PDF
    Navigation through the web, colloquially known as "surfing", is one of the main activities of users during web interaction. When users follow a navigation trail they often tend to get disoriented in terms of the goals of their original query and thus the discovery of typical user trails could be useful in providing navigation assistance. Herein, we give a theoretical underpinning of user navigation in terms of the entropy of an underlying Markov chain modelling the web topology. We present a novel method for online incremental computation of the entropy and a large deviation result regarding the length of a trail to realize the said entropy. We provide an error analysis for our estimation of the entropy in terms of the divergence between the empirical and actual probabilities. We then indicate applications of our algorithm in the area of web data mining. Finally, we present an extension of our technique to higher-order Markov chains by a suitable reduction of a higher-order Markov chain model to a first-order one

    Single-step method for β-galactosidase assays in Escherichia coli using a 96-well microplate reader

    Get PDF
    AbstractHistorically, the lacZ gene is one of the most universally used reporters of gene expression in molecular biology. Its activity can be quantified using an artificial substrate, o-nitrophenyl-ß-d-galactopyranoside (ONPG). However, the traditional method for measuring LacZ activity (first described by J. H. Miller in 1972) can be challenging for a large number of samples, is prone to variability, and involves hazardous compounds for lysis (e.g., chloroform, toluene).Here we describe a single-step assay using a 96-well microplate reader with a proven alternative cell permeabilization method. This modified protocol reduces handling time by 90%
    corecore